/**
 * 版权所有(C)，上海勾芒信息科技，2016，所有权利保留。
 * 
 * 项目名：	carwx
 * 文件名：	CustomMenuClickHandler.java
 * 模块说明：	
 * 修改历史：
 * 2016年12月1日 - Debenson - 创建。
 */
package com.alex.wechat.mp.handler;

import java.util.Map;

import org.springframework.beans.factory.annotation.Autowired;

import com.alex.wechat.core.handler.WxHandler;
import com.alex.wechat.mp.config.WxConsts;

import me.chanjar.weixin.common.exception.WxErrorException;
import me.chanjar.weixin.message.bean.WxXmlMessage;
import me.chanjar.weixin.message.rule.WxMessageHandler;
import me.chanjar.weixin.mp.bean.message.WxMpXmlOutMessage;

/**
 * 自定义菜单点击事件处理。
 * 
 * @author Debenson
 * @since 0.1
 */
@WxHandler(value = WxConsts.EVT_CLICK)
public class MenuClickHandler implements WxMessageHandler {

  @Autowired
  private AutoReplyTool autoReplyTool;

  @Override
  public String handle(WxXmlMessage wxMessage, Map<String, Object> context)
      throws WxErrorException {
    final String eventKey = wxMessage.getEventKey();
    WxMpXmlOutMessage m = autoReplyTool.autoReply(wxMessage, eventKey);
    return m == null ? null : m.toXml();
  }

}
